學習影片
https://www.youtube.com/watch?v=2j8VlJFkLFg
O(log n)。BF = Height(Left Subtree) - Height(Right Subtree)
-1 ≤ BF ≤ 1,當 |BF| > 1 時,表示該節點失衡,需要進行旋轉操作來調整。O(log n)。單左旋轉(LL):
     10
       \
        20
          \
           30
→ 單左旋轉 →
     20
    /  \
   10   30
單右旋轉(RR):
     30
    /
   20
  /
 10
→ 單右旋轉 →
     20
    /  \
   10   30
左右旋轉(LR):
   30
  /
10
  \
  20
→ 左右旋轉 →
     20
    /  \
   10   30
右左旋轉(RL):
  10
    \
     30
    /
  20
→ 右左旋轉 →
     20
    /  \
   10   30
優點:
保持高度平衡,保證所有操作的時間複雜度為 O(log n)。
相較於普通二元搜尋樹,可以避免最壞情況退化為鏈表結構。
缺點:
插入與刪除後可能需要多次旋轉,維護代價較高。
當資料量大且操作頻繁時,旋轉操作可能增加不必要的額外計算成本。